﻿'Imports Fgv.Framework.Dal
'Imports Fgv.Framework.Seguranca.Dominio

'Namespace Seguranca.Dal

'    ''' <summary>
'    ''' Interface que herda atributos da clsse Papel
'    ''' </summary>
'    ''' <remarks></remarks>
'    Public Interface IPapelDao
'        Inherits IGenericDao(Of Papel)

'        ''' <summary>
'        ''' Função de busca por path(caminho) do recurso
'        ''' </summary>
'        ''' <param name="_path">String</param>
'        ''' <returns>Lista(classe Papel)</returns>
'        ''' <remarks></remarks>
'        Function BuscarPorPathDoRecurso(ByVal _path As String) As IList(Of Papel)

'        ''' <summary>
'        ''' Função de busca por path(caminho) da permissão
'        ''' </summary>
'        ''' <param name="_permissao">classe Permissao</param>
'        ''' <returns>Lista(classe Papel)</returns>
'        ''' <remarks></remarks>
'        Function BuscarPorPathDaPermissao(ByVal _permissao As Permissao) As IList(Of Papel)

'        ''' <summary>
'        ''' Função de busca por Tipo da Operação
'        ''' </summary>
'        ''' <param name="_tipoOperacao">classe TipoOperacao</param>
'        ''' <returns>Lista(classe Papel)</returns>
'        ''' <remarks></remarks>
'        Function BuscarPorTipoOperacao(ByVal _tipoOperacao As TipoOperacao) As IList(Of Papel)

'        ''' <summary>
'        ''' Função de busca por Mnemônico
'        ''' </summary>
'        ''' <param name="_mnemonico">String</param>
'        ''' <returns>classe Papel</returns>
'        ''' <remarks></remarks>
'        Function BuscarPorMnemonico(ByVal _mnemonico As String) As Papel

'        Function BuscarPapeisPorPapel(ByVal _papel As Papel) As List(Of Papel)

'        Function BuscarPorCodigoExterno(ByVal _codigoExterno As String) As Papel

'        Function BuscarPorPrefixoCodigoExterno(ByVal _prefixoCodigoExterno As String) As IList(Of Papel)

'        Function BuscarPapeisPorCodigoExterno(ByVal _codigoExterno As String) As IList(Of Papel)

'        Sub SalvarOuAlterarComFlush(ByRef _papel As Papel)

'        Sub ReverterExclusao(ByRef entity As Papel)

'    End Interface

'End Namespace

